Preemptor()

Preemption Logic System Function

Syntax samples

PREEMPTOR()

Var1=PREEMPTOR()

Description

Identifies whether a downtime or entity is making the preemptive request. The function returns the name index number of the preempting entity; however, it returns a 0 if the preemptor is a downtime.

Valid In

Operation logic defined as a preemptive process.

Example

Workers may process an entity, bracket, at one of two locations, Punch_1 or Punch_2. You may preempt the bracket at Punch_1 by either an entity with a preemptive priority or a location shift downtime with a preemptive priority. If an entity preempts the bracket, workers send the bracket to Punch_2 to finish processing. Punch_1 and Punch_2 are on the same shift, and are scheduled to go off-shift at the same time. Therefore, if a shift downtime preempts the bracket at Punch_1, the bracket would not be able to go to Punch_2. In this case, the bracket is sent to a location called Punch_Wait where it waits for Punch_1 to come back on-shift. The PREEMPTOR() function determines whether an entity or shift downtime preempts the bracket.

Process Table

Entity

Location

Operation (min)

Bracket

Punch_1

WAIT 3 min

Bracket*

Punch_1

IF PREEMPTOR()>0 THEN

ROUTE 1

ELSE

ROUTE 2

* Preemptive Process Record

Routing Table

Blk

Output

Destination

Rule

Move Logic

1

Bracket

Inspect

FIRST 1

 

1

 

Bracket

Punch_2

FIRST 1

 

2

 

Bracket

Punch_Wait

FIRST 1

 

See Also

Preemption Process Logic.